lexer grammar ExpresionesLexer;

options {
  language = Java;
}

@header {
  package PL.practica10;
}

  //PARA FORMAR TOKEN MAS COMPLEJOS

fragment DIGITO: '0'..'9';
fragment LETRA : ('A'..'Z') | ('a'..'z') | '_';
fragment NUEVA_LINEA : '\r\n';

 //TOKENS A FILTRAR 
BLANCO: (' '|'\t'|NUEVA_LINEA) {skip();};
COMENTARIO: '/*' (options {greedy=false;}:.)* '*/'{skip();};

// Tokens 

ID : LETRA (LETRA | DIGITO)*;
NUMERO: DIGITO+;
MAS : '+';
MENOS : '-';
ASTERISCO : '*';
SLASH : '/';
ASIGNACION : ':=';
ABRIRPARENTESIS : '(';
CERRARPARENTESIS : ')';
SEPARADOR : ';';

//Tokens operadores relacionales

MAYOR : '>';
MAYOR_IGUAL : '>=';
MENOR : '<';
MENOR_IGUAL : '<=';
IGUAL : '==';
DISTINTO : '!=';




